package Stragos.negocio;

import java.util.ArrayList;

import Stragos.dao.ReservaDAO;
import Stragos.excepcion.DAOExcepcion;
import Stragos.modelo.Reserva;


public class GestionReserva {
	

	public void insertar(String fecha, String descripcion, boolean elog, int idSala, int idCliente) throws DAOExcepcion {
		ReservaDAO dao = new ReservaDAO();

		Reserva vo = new Reserva();
		vo.setFecha(fecha);
		vo.setDescripcion(descripcion);
		vo.setElog(elog);
		vo.setIdSala(idSala);
		vo.setIdCliente(idCliente);

		dao.insertar(vo);
	}
	
	public Reserva obtener(int idReserva) throws DAOExcepcion {
		ReservaDAO dao = new ReservaDAO();
		return dao.obtener(idReserva);
	}
	
	public String crearReserva(String fecha,String correo, String clave, int salaid, String descripcion){
		String mensaje="";
		String pwd=""; 
		
		GestionCliente objcli=new GestionCliente();
		GestionReserva objre=new GestionReserva();
		
		
		try {
			if (objcli.buscarClientexCorreo(correo).isEmpty()!=true){
				System.out.println("1");
				
				for(int i=0; i<objcli.buscarClientexCorreo(correo).size(); i++){
					pwd=objcli.buscarClientexCorreo(correo).get(i).getClave();
					System.out.println(objcli.buscarClientexCorreo(correo).size());
					System.out.println(pwd);
					if(pwd.equals(clave)){
						if (salaid!=0){
							System.out.println("3");
							objre.insertar(fecha, descripcion, true, salaid, objcli.buscarClientexCorreo(correo).get(i).getIdCliente());
							mensaje="Se realizo la reserva exitosamente";
							//parar el proceso
						}else{
							mensaje="No ha seleccionado la sala";
							//parar el proceso
						}						
					}else {
						mensaje="Clave incorrecta";
						//parar el proceso
					}
				}
				
			}else {
				mensaje="Email no registrado";
				// parar el proceso
			}
		} catch (DAOExcepcion e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		return mensaje;
		
	}
	
	public void eliminar(int idReserva) throws DAOExcepcion {
		ReservaDAO dao = new ReservaDAO();
		dao.eliminar(idReserva);
	}
	
	public ArrayList<Reserva> listar() throws DAOExcepcion {
		ReservaDAO dao = new ReservaDAO();

		return dao.listar();
	}
	
}